#!/bin/bash
###############################################################################
##                                                                           ##
## Скрипт выводит список пакетов в репозитории созданого программой reprepro ##
##                                                                           ##
###############################################################################
function help()
{
echo "repo-ls - Скрипт выводит список пакетов в репозитории, созданого
программой reprepro

Использование:
repo-ls [параметры]

Параметры:
-R REP_PATH:		Корневой каталог репозитория (указывать не нужно)
-C COMPONENT:		раздел репозитория (main/cache/cdrom), по умолчанию
			выбираются все разделы
-N CODENAME:		кодовое имя дистрибутива, (lenny/squeeze/...), по
			умолчанию local_current"
}
##############################################################################

# default parameters
REP_PATH=/home/repo-deb #ПАПКА РЕПОЗИТОРИЯ ПО УМОЛЧАНИЮ. ИЗМЕНИТЬ НА СВОЮ !!!

COMPONENT=""
CODENAME="local_current"

# Maximum parameters count
Num=0
# Filling the array of input parameters
for input_param in $*
do
	let "Num++" # Increment Num
	params[$Num]=$input_param
done

# Main checking cycle (check input parameters)
for ((i=1; i <= Num ; i++))
do
case ${params[$i]} in

"-R") 	REP_PATH=${params[$i+1]}
	let "i++";;

"-C") 	COMPONENT="-C ${params[$i+1]}"
	let "i++";;

"-N") 	CODENAME=${params[$i+1]}
	let "i++";;

"-h" | "--help" ) help
	exit;;
	
* ) 	echo "Указан не допустимый параметр или опция. Для деталей смотрите $0 --help"
	exit;;
esac
done

reprepro -b $REP_PATH $COMPONENT list $CODENAME 
